皆さん、いかがお過ごしでしょうか?9月になってロンドンはすっかり夏の終わりです。本日のエピソードはホスト二人の近況回になっています。
ロンドンの夏の服装とKenのヒゲや髪型のこだわりについてまったりと話しています。
ご感想はご意見は X でハッシュタグ #LondonTechTalk をつけてつぶやいてください。お便りはこちらの Google Form でも募集しています。
London Tech Talk 名物 Bookclub 第四弾 "Database Internals" 第十章の振り返り収録です。"Leader Election" の内容について振り返りました。
まずは "Bully Algorithm" について紹介しました。避難所の比喩を織り交ぜながら、リーダーが故障した時に、ノードが自分のランクをお互いに送り合いながら新しいリーダーを決める過程について紹介しました。
続いて Bully Algorithm の改良版とも言える "Next-In-Line Failover" や "Candidate/Ordinary Optimization" について紹介しました。次にリーダーになりうる候補者リストを事前に決めたり、リーダーに選定されうる候補者セットとそうではない一般セットに分けたり、といった工夫によって、リーダー選定アルゴリズムにおける Thundering Herd 現象を避けようとしている観点について触れました。
その他、ボトムアップでリーダーを選定する "Invitation Algorithm" や、リング状のトポロジーを形成してリーダーを決める "Ring Algorithm" についても説明しました。
その他 Bookclub で盛り上がった観点や、次回の Chapter 11 の予定について触れました。
ご意見・ご感想など、お便りはこちらの Google Form で募集しています。
Yuta さんを初めてゲストにお呼びしました。ベルリンからトロント、東京へと渡り歩いた Yuta さんの日本本帰国後に何をしているか、今後についてお話を伺いました。
ご意見・ご感想など、お便りはこちらの Google Form で募集しています。
Blue Penguin さん、angreen さん、りささんからお便りをいただきました。お便りありがとうございます。そのお便りに返信する形で収録しました。
前半は、Blue Penguin さんと angreen さんのお便りの返信という形で「技術アウトプットのモチベーション維持」について話しました。
後半は、りささんのお便りの返信という形で「ベルリンとロンドンの生活の違い」について話しました。
ご意見・ご感想など、お便りはこちらの Google Form で募集しています。
Tomohisa さんをゲストにお呼びしました。今回のトピックは「AI 時代のプログラミング教育」です。
Tomohisa さんが七月初旬に公開された記事 (zenn.dev) の中で、12歳と16歳の娘さんたちに Claude Code を用いてアプリを作成して Vercel にデプロイまで完成させた、というストーリーを紹介されていました。この記事を受けて、コーディングの経験が無い子どもたちが、AI コーディングツールを用いることによって、どのような教育の可能性を広げることができるのかについて議論しました。
ご意見・ご感想など、お便りはこちらの Google Form で募集しています。
London Tech Talk で書籍出版プロジェクトを始動しました。本収録では、どのようなトピックなのか、なぜ書籍を出版しようと思ったのかについて紹介しました。また、プロジェクトに携わる Teppei と Ken それぞれの想いについても触れました。
ご意見・ご感想など、お便りはこちらの Google Form で募集しています。
imajin さんをゲストにお呼びしました。
アイルランドの天気についてお話することから始まり、家族が日本に一時帰国している間にどう時間を過ごすか、特にimajinさんはランニング、読書にハマっていること、孤独とどう向き合うかについてお話を聞きました。また最近の大きな出来事として、同僚と外で飲んでいるときにバックパックを盗まれて犯人を AirTag で追跡したことを共有していただきました。後半では、最近のお仕事の話、例えば iOS エンジニアからフルスタックな働き方をしていること、大企業で必要なスキル、日本本帰国したときのお仕事について語り合いました。
ご感想はご意見は X でハッシュタグ #LondonTechTalk をつけてつぶやいてください。お便りはこちらの Google Form でも募集しています。
London Tech Talk 名物 Bookclub 第四弾 "Database Internals" 第九章の振り返り収録です。"Failure Detection" の内容について振り返りました。
まず "Heartbeat / Ping" スタイルでの故障検知について紹介しました。誤検知を避けるために、タイムアウト時間を伸ばしたり、リトライ回数を増やしたりという軽減策と、そのデメリットについて SRE としての実体験をもとに紹介しました。
次に "SWIM Protocol" について話しました。 Heartbeat スタイルと Gossip スタイルの合わせ技とも言えるアルゴリズムです。Direct Ping / Indirect Ping の使い分けや、どのようなノードリストをメンバー間で共有していくのかについて触れました。
続いて ”Phi Accurual Failure Detection" について説明しました。Apache Akka や Apache Cassandra でも使われている本プロトコルは日本の研究者によって発表された論文に基づいています。故障確率 Phi を数理統計的に計算するその革新性について話が広がりました。
最後に、それぞれのプロトコルを「朝になかなか起きてこないティーンエイジャーの子供を起こすシーン」というアナロジーで説明してみました。
そのほか Bookclub で盛り上がった観点や、次回の Chapter 10 の予定について触れました。
ご意見・ご感想など、お便りはこちらの Google Form で募集しています。
ホストの二人で近況編を収録しました。
前半は、Kaz が新しいホームベーカリーを購入した話をしました。毎朝焼きたてのパンを焼く技術、変数を変えながら味を試行錯誤する過程、朝ごはんのレパートリーについて盛り上がりました。
後半は、Ken と Kaz が、子育てをしながら父親プログラマーという前提で考える、現在のキャリア戦略について意見交換をしました。
ご意見・ご感想など、お便りはこちらの Google Form で募集しています。
London Tech Talk 名物 Bookclub 第四弾 "Database Internals" 第八章の振り返り収録です。"Distributed Systems - Introduction and Overview" の内容について振り返りました。
冒頭からいきなり脱線して SQLite3 がいかに耐障害性と Simplicity の観点から優れているかについて語ってしまいました。とはいえ、この背景にあるのはいかに Distributed Database Systems を運用するのかが難しいという事実があります。
ようやく本来のトピックに戻り、本章の内容について振り返りました。Two General's Problem や FLP Impossiblity などのキーワードについて紹介しました。
また Bookclub で盛り上がった観点についても紹介しました。Exactly-once delivery / At-least-once delivery やメッセージの順序保証の難しさ、 Backoff / Jitterのようなリトライ戦略の重要性について議論しました。
加えて TGP (Two General's Problem) / BGP (Byzantine Generals Problem (BGP) の違いについても紹介しました。分散環境における合意形成の難しさについて、以前 Ken が執筆した人狼ゲームのアナロジーで語る合意形成のブログにも触れました。
そのほか Bookclub で盛り上がった観点や、次回の Chapter 9 の予定について触れました。
ご意見・ご感想など、お便りはこちらの Google Form で募集しています。
Mag さんをゲストにお呼びしました。Mag さんはスイスで完全未経験からソフトウェアエンジニアの職を得ました。その体験談について、彼女がどのような思いでソフトウェアエンジニアを目指したか、職を得るまでに行ったこと等のお話をお聞きしました。
ご意見・ご感想など、お便りはこちらの Google Form で募集しています。
所さん、たけもりさんからお便りをいただきました。お便りありがとうございます。そのお便りに返信する形で収録しました。
ご意見・ご感想など、お便りはこちらの Google Form で募集しています。
Takumasa Sakao さんをゲストにお呼びしました。
前半では、テスラの電気自動車でどこに行ったかにいてお話しました。東京から神戸まで車で行って道中の、京都でのマンガミュージアム、滋賀での聖地巡礼からのフェリーで福岡への旅行について深堀りしました。そこからVtuber のぽこぴーの魅力、転職、エンジニアの副業について話が広がりました。
ご意見・ご感想など、お便りはこちらの Google Form で募集しています。
London Tech Talk 名物 Bookclub 第四弾 "Database Internals" 第七章の振り返り収録です。"Log-Structured Storage" の内容について振り返りました。
まずは B Tree がどのような課題を抱えており、それを LSM Tree がどのように解決しようとしたのかについて紹介しました。LSM Tree の重要なコンポーネントである "MemTable" と "SSTable" について説明しました。
続いて、LSM Tree のアーキテクチャにおける読み込みのボトルネックを "Bloom Filter" や "Compaction" といったテクニックによって軽減させようとしている工夫について紹介しました。
本書の内容から派生して、実際に LSM Tree を実装しているデータベースとして有名な RocksDB について話が広がりました。RocksDB の開発が始まった歴史や、Site Reliability Engineer として働く Ken が RocksDB を運用する際に重要視しているメトリクス、RocksDB で実装されている "Leveled SSTable" の概念について話しました。
その他 Bookclub で盛り上がった観点や、次回の Chapter 8 の予定について触れました。
ご意見・ご感想など、お便りはこちらの Google Form で募集しています。
ホストの二人で Kaz がPIP (Performance Improvement Plan) を乗り越えたことについて話しました。
ご意見・ご感想など、お便りはこちらの Google Form で募集しています。
ゆうすふさんからお便りをいただきました。お便りありがとうございます。そのお便りに返信する形で収録しました。
イギリスで未経験からソフトウェアエンジニアとして転職するには?という内容でお便りをいただきました。次にどうアクションをするか、について Ken と Kaz がそれぞれ意見交換をしました。参考になれば幸いです。
ご意見・ご感想など、お便りはこちらの Google Form で募集しています。
This week on London Tech Talk, we're diving deep into one of the most talked-about innovations in software development: AI-Assisted Coding! We're thrilled to welcome David Laing, an expert who's been at the forefront of understanding and implementing these transformative tools.
We tackle three big questions: How does AI-assisted coding change our day-to-day development flow, what are its career impacts, and how can we effectively leverage this technology?
David shares his practical experiences with tools, revealing significant shifts not just in lines of code, but in developers' core responsibilities, extending into planning, reviewing, and testing phases. David also shares his insightful opinions on two big drivers for potential career impacts. Although we cannot foresee the future with a crystal ball, his deep thinking will definitely help you understand the big trend with your own head. Finally, we tackle the critical question: how can engineering teams and individual developers effectively integrate AI-assisted coding? David's view into the real-world constraints and strategies for a smooth, high-performing integration was eye-opening. He also shares how human interactions have been leveled up at work thanks to new tooling.
This episode is packed with thought-provoking discussions and actionable ideas for every software engineer navigating the AI-driven landscape.
Also check out the cool stuff David is building: Decision Copilot! Decision Copilot is a web application to help teams make great decisions. He shares his great insight on how to make great decision-making, which focuses on WHO, not only WHAT. The source code is open source.
He also started a very exciting project, "Follow-the-Sun Development Experiment: Building Decision Copilot MCP with AI Agents", which you can know more in this recording. If you are interested in getting involved, please talk to David on GitHub Discussion page.
If you have any feedback or opinions, please send us feedback via this Google Form.
Blue Penguin さんからお便りをいただきました。お便りありがとうございます。そのお便りに返信する形で収録しました。
ご意見・ご感想など、お便りはこちらの Google Form で募集しています。
London Tech Talk 名物 Bookclub 第四弾 "Database Internals" 第六章の振り返り収録です。"B-Tree Varients" の内容について振り返りました。
まず B Tree (B+ Tree) の簡単なおさらいをしました。B Tree のかかえる Write Amplification や Space Amplification という課題を解決するために B Tree の亜種が開発される必要があったという前提についてまずは理解しましょう。
最初に紹介したのは Lazy B-Trees です。Buffering というテクニックを利用して書き込みによる木構造の Node Split や Node Merge の頻度を下げる工夫について紹介しました。具体的には MongoDB のストレージエンジンでもある WiredTiger や Lazy-Adaptive Tree について触れました。
続いて Flash-Disk Tree (FD-Tree) について紹介しました。Buffering の議論を推し進めて、Chapter 7. でも紹介する LSM Trees をインスパイアーしたとされる FD Tree のキーワードについて紹介しました。
最後に、Microsoft から 2013 年に発表された Buzzword-Tree について紹介しました。マルチコア環境でもスケールするためのデータ構造として、CPU の特別な命令セットである CAS 命令を設計のコアに据え、Mapping Table と呼ばれる中間キャッシュレイヤーを実装した Buzzword-Tree の革新的なアーキテクチャについて触れました。
そのほか Bookclub で盛り上がった観点や、次回の Chapter 7 の予定について触れました。
ご意見・ご感想など、お便りはこちらの Google Form で募集しています。
くもりぞらあおさんからお便りを頂きました。お便りありがとうございます。そのお便りに返信する形で収録しました。
ご意見・ご感想など、お便りはこちらの Google Form で募集しています。